A separation of (n -1)-consensus and n-consensus in read-write shared-memory systems
نویسندگان
چکیده
A fundamental research theme in distributed computing is the comparison of systems in terms of their ability to solve basic problems such as consensus that cannot be solved in completely asynchronous systems. In particular, in a seminal work [?], Herlihy compares shared-memory systems in terms of the shared objects that they have: he proved that there are shared objects that are powerful enough to solve consensus among n processes, but are too weak to solve consensus among n + 1 processes; such objects are placed at level n of a wait-free hierarchy. The importance of this hierarchy comes from Herlihy’s universality result: intuitively, every object at level n of this hierarchy can be used to implement any object shared by n processes in a wait-free manner. As in [?], we compare shared-memory systems with respect to their ability to solve consensus among n processes. But instead of comparing systems defined by the shared objects that they have, we compare readwrite systems defined by the process schedules that they allow. These systems capture a large set of systems, e.g., systems whose synchrony ranges from fully synchronous to completely asynchronous, several systems with failure detectors, and “obstruction-free” systems. In this paper, we consider read-write systems defined in terms of process schedules, and investigate the following natural question: For every n, is there a system of n processes that is strong enough to solve consensus among every subset of n− 1 processes in the system, but not enough to solve consensus among all the n processes of the system? We show that the answer to the above question is “yes”, and so these systems can be classified into hierarchy akin to Herlihy’s hierarchy. 1 Motivation and related work A fundamental research theme in distributed computing is the comparison of systems in terms of their ability to solve basic problems such as consensus or k-set agreement that cannot be solved in completely asynchronous systems [?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?]. In particular, in a seminal work [?], Herlihy compares shared-memory systems in terms of the shared objects that they have: he proved that there are shared objects that are powerful enough to solve consensus among n processes, but are too weak to solve consensus among n+1 processes; such objects are placed at level n of a wait-free hierarchy. The importance of this hierarchy comes from Herlihy’s universality result: intuitively, every object at level n of this hierarchy can be used to implement any object shared by n processes in a wait-free manner. As in [?], in this paper we compare shared-memory systems with respect to their ability to solve consensus among n processes. But instead of comparing systems defined by the shared objects that they have, we compare systems (with shared registers) defined by the process schedules that they allow, as we explain below. First, note that several types of read-write shared-memory systems, e.g, asynchronous, partially synchronous and synchronous systems, can be defined by the set of process schedules that they allow. For example, a completely asynchronous system is one where every process schedule can occur. Similarly, a partially synchronous system is one where the process schedules satisfy some timeliness or “fairness” conditions [?, ?, ?] which effectively define the set of process schedules that are allowed. Perfectly synchronous systems can also be defined by the set of process schedules that are allowed. Furthermore, several systems with failure detectors [?] are equivalent to systems defined in terms of process schedules: for several well-known failure detectors D (including P,✸P, S and ✸S) an asynchronous system augmented with D is equivalent to a system where schedules satisfy some fairness conditions [?]. Finally, obstruction-free algorithms work in systems with a specific set of process schedules, namely, schedules where some process eventually executes solo [?]. Thus, shared-memory systems defined in terms of process schedules capture a large set of systems, e.g., systems whose synchrony ranges from fully synchronous to completely asynchronous, several systems with failure detectors, and “obstruction-free” systems. In this paper, we consider such systems and investigate the following natural question: For every n, is there a system of n processes that is strong enough to solve consensus among every subset of n−1 processes in the system, but not enough to solve consensus among all the n processes of the system? If this is true, it would imply that these systems can be classified into hierarchy akin to Herlihy’s hierarchy. The answer to the above question is not obvious. In [?] it is shown that if a failure detectorD is powerful enough to solve consensus among every subset of n− 1 processes in a system of n processes, then it is powerful enough to solve consensus among all the n processes in the system. Since [?] shows that several systems with failure detectors are equivalent to systems with sets of schedules, it is tempting to conjecture that the answer is “no”: In this paper we show that the answer to the above question is “yes”. More precisely, we prove that for every n ≥ 2, there is a read-write shared-memory system S of n processes such that: (a) consensus can be solved for every subset of n − 1 processes of S, and (b) consensus cannot be solved for the n processes of S. It is worth noting that the positive result (a) holds even if S has only a bounded number of bounded-size registers, while the impossibility result (b) holds even if S has an unbounded number of unbounded-size registers. Intuitively, a process schedule specifies the order in which processes take steps. The results in [?] were for message-passing systems, but similar results hold for read-write shared-memory systems.
منابع مشابه
N-Consensus is the Second Strongest Object for N+1 Processes
Objects like queue, swap, and test-and-set allow two processes to reach consensus, and are consequently “universal” for a system of two processes. But are there deterministic objects that do not solve 2-process consensus, and nevertheless allow two processes to solve a task that is not otherwise wait-free solvable in read-write shared memory? The answer “no” is a simple corollary of the main re...
متن کاملConsensus Numbers of Transactional Objects
This paper describes the ability of asynchronous shared-memory distributed systems to solve the consensus problem in a wait-free manner if processes are permitted to perform transactions on the shared memory in a single atomic action. It will be shown that transactional memory is often extremely powerful, even if weak types of shared objects are used and the transactions are short. Suppose T is...
متن کاملThe Life in 1-Consensus
This paper introduces the atomic Write and Read Next (WRNk) deterministic shared memory object, that for any k ≥ 3, is stronger than read-write registers, but is unable to implement 2-processor consensus. In particular, it refutes the conjecture claiming that every deterministic object of consensus number 1 is computationally equivalent to read-write registers.
متن کاملSet Consensus Using Arbitrary Objects
In the (N; k)-consensus task, each process in a group starts with a private input value, communicates with the others by applying operations to shared objects, and then halts after choosing a private output value. Each process is required to choose some process's input value, and the set of values chosen should have size at most k. This problem, rst proposed by Chaudhuri in 1990, has been exten...
متن کاملUsing Sticky Bits for Wait-Free Synchronization1
In this paper we consider implementation of atomic wait-free objects in the context of a shared-memory multiprocessor. We introduce a new primitive object, the \Sticky-Bit", and show its universality by proving that any safe implementation of a sequential object can be transformed into a wait-free atomic one using only Sticky Bits and safe registers. The Sticky Bit may be viewed as a memory-ori...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2017